package com.library.management.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.library.common.annotation.Excel;
import com.library.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 图书对象 library_book
 * 
 * @author library
 * @date 2023-03-26
 */
public class LibraryBook extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 书籍ID */
    private Long id;

    /** 书名 */
    @Excel(name = "书名")
    private String bookName;

    /** 书籍作者 */
    @Excel(name = "书籍作者")
    private String bookAuthor;

    /** 出版社 */
    @Excel(name = "出版社")
    private String bookPublisher;

    /** 出版日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出版日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date publishTime;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal bookPrice;

    /** 总数 */
    @Excel(name = "总数")
    private Integer bookSum;

    /** 借出数量 */
    @Excel(name = "借出数量")
    private Long bookLend;

    /** 书籍类型 */
    @Excel(name = "书籍类型")
    private String tag;

    /** isbn编号 */
    @Excel(name = "isbn编号")
    private String isbn;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setBookName(String bookName) 
    {
        this.bookName = bookName;
    }

    public String getBookName() 
    {
        return bookName;
    }
    public void setBookAuthor(String bookAuthor) 
    {
        this.bookAuthor = bookAuthor;
    }

    public String getBookAuthor() 
    {
        return bookAuthor;
    }
    public void setBookPublisher(String bookPublisher) 
    {
        this.bookPublisher = bookPublisher;
    }

    public String getBookPublisher() 
    {
        return bookPublisher;
    }
    public void setPublishTime(Date publishTime) 
    {
        this.publishTime = publishTime;
    }

    public Date getPublishTime() 
    {
        return publishTime;
    }
    public void setBookPrice(BigDecimal bookPrice) 
    {
        this.bookPrice = bookPrice;
    }

    public BigDecimal getBookPrice() 
    {
        return bookPrice;
    }
    public void setBookSum(Integer bookSum) 
    {
        this.bookSum = bookSum;
    }

    public Integer getBookSum() 
    {
        return bookSum;
    }
    public void setBookLend(Long bookLend) 
    {
        this.bookLend = bookLend;
    }

    public Long getBookLend() 
    {
        return bookLend;
    }
    public void setTag(String tag) 
    {
        this.tag = tag;
    }

    public String getTag() 
    {
        return tag;
    }
    public void setIsbn(String isbn) 
    {
        this.isbn = isbn;
    }

    public String getIsbn() 
    {
        return isbn;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("bookName", getBookName())
            .append("bookAuthor", getBookAuthor())
            .append("bookPublisher", getBookPublisher())
            .append("publishTime", getPublishTime())
            .append("bookPrice", getBookPrice())
            .append("bookSum", getBookSum())
            .append("bookLend", getBookLend())
            .append("tag", getTag())
            .append("isbn", getIsbn())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
